1. Technical Field of the Invention
The present invention generally relates to distribution of presence information. More particularly, and not by way of any limitation, the present invention is directed to system and method for enabling scalable distribution of such presence information.
2. Description of Related Art
Presence distribution systems are currently implemented using a single presence server; that is, each presentity registers with and publishes its presence information to only one presence server. FIG. 1 illustrates such a prior art presence distribution system, which is designated in FIG. 1 by a reference numeral 100. As shown in FIG. 1, all presentities, represented by a presentity 102, in the system 100 register with a single presence server 104, as represented by an arrow 105. Similarly, all watchers, represented in FIG. 1 by a watcher 106, subscribe to one or more of the presentities 102 via the presence server 104, as represented by an arrow 107. After it is registered, the presentity 102 publishes its presence information to the server 104 when any of its attributes change, as represented by an arrow 108. The server 102, in turn, notifies the watchers, such as the watcher 106, that have subscribed to the presentity 102, as represented by an arrow 110.
The centralized presence distribution system, such as the system 100, suffers from a number of significant limitations. In particular, due to the lack of scalability inherent in the system, performance capacity will become saturated as the number of users grows. Moreover, centralization, or lack of distributed mechanisms for presence servers, results in problems for organizations with large divisions located in geographically separate areas. Finally, the system 100 lacks redundancy, which will result in users being unable to access system services should the server 104 crash or be taken down to undergo maintenance.
Therefore, what is needed is a presence distribution system that is scalable and overcomes the above-noted deficiencies of currently available systems.